-
Notifications
You must be signed in to change notification settings - Fork 14.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: deprecate pylint
in favor of ruff
#31262
Conversation
This could be slightly controversial, but submitted as a DRAFT for discussion. The case for pylint deprecation: - mostly covered by ruff: what matters most in pylint is already re-implemented - pylint is SLOW, ruff is a million times faster - pre-commit / pylint is one of our longest, most expensive CI step - rules are currently scattered in different places and can conflict at times Very relevant is this link that explains what pylint features are covered or not by ruff: astral-sh/ruff#970 If we agree on the direction, the plan is to follow up and enable all the rules, apply `ruff check --fix` and `ruff check --add-no-qa` Simplify.
@mistercrunch Can we reserve this for the 5.0 breaking window? We'll gather proposals for 5.0 next week. I'll send an email and you could include this. I know that this will break our internal release so using a major release is safer. |
When is this scheduled? Thinking about it though, switching dev tools shouldn't have any impacts on UX/interfaces. From my understanding semver is mostly interface oriented. I'm favoring moving fast on this while I have momentum on improving devex. Though it may have impact on mergeability of cherries, so may be good to wait for that. Also noting that when I enabling the pylint rules currently commented in my PR using |
@sadpandajoe curious on your thoughts about timing, for context the follow up PR would touch the backend with minor linting tweaks, maybe 300 LoC across the backend. |
@mistercrunch I believe the breaking change window is opening soon. I don't think it'll affect Preset but sounds like it might have an affect on AirBnb? |
ruff
ruff
ruff
pylint
in favor of ruff
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was hesitant at first, but given all the persistent unfixed critical issues on pylint
, and the momentum ruff
has, I agree this is the future right now. LGTM with a minor typo nit.
Co-authored-by: Ville Brofeldt <[email protected]>
@michael-s-molina do you still think we should hold back on the 5.0 process or can I just merge? |
Hmm I don't think this should necessarily be tied to the 5.0 breaking window 🤔 I say 🚢 it, but let's wait for @michael-s-molina to confirm. |
I'm ok with merging this now if you think it's not controversial. I would just ask to add something to |
Ok adding a note in |
Ok, will merge and fast follow with another PR enabling more |
Fast-follow here -> #31447 |
This could be slightly controversial, but submitted as a DRAFT for discussion.After thinking about it, I think we should just move forward with this. Shouldn't be controversial. File under simplify/accelerate builds/devex/tooling.The case for pylint deprecation:
ruff
, deprecatedpylint
and are extremely happy with the switchVery relevant is this link that explains what pylint features are covered or not by ruff:
astral-sh/ruff#970
Essentially we can simplify & speed things up here..
If we agree on the direction, the plan is to follow up and enable all the rules, apply
ruff check --fix
andruff check --add-no-qa
, which will enable the set of rules commented now, fix the obvious, and add a# noqa
to the lines that are not immediately fixable.